﻿using Admin.Core.Common.BaseModel;
using FreeSql.DataAnnotations;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;

namespace Admin.Core.Model.Warehouse
{
    /// <summary>
    /// 物料类型
    /// </summary>
    [Table(Name = "WH_XBC_TYPE")]
    public class XbcType : EntityAdd, IEntitySoftDelete
    {
        /// <summary>
        /// 物料类型名称
        /// </summary>
        [Column(Name = "NAME")]
        public string  Name { get; set; }


        /// <summary>
        /// 是否有有效期
        /// </summary>
        [Description("是否有有效期")]
        [Column(Name = "ISTERM")]//
        public bool IsTerm{ get; set; } = false;


        /// <summary>
        /// 是否记录来料批次
        /// </summary>
        [Description("是否记录来料批次")]
        [Column(Name = "ISREGLLBATCH")]//
        public bool IsRegLlBatch { get; set; } = false;

        /// <summary>
        /// 是否单个入库
        /// </summary>
        [Description("是否单个入库")]
        [Column(Name = "ISSINGLE")]//
        public bool IsSingle { get; set; } = false;

        /// <summary>
        /// 是否生成编号
        /// </summary>
        [Description("是否生成编号")]
        [Column(Name = "ISPRODUCENUMB")]//
        public bool IsProduceNumb { get; set; } = false;
        /// <summary>
        /// 编号前缀
        /// </summary>
        [Description("编号前缀")]
        [Column(Name = "PREFIX")]//
        public string Prefix { get; set; }

        /// <summary>
        /// 是否可归还
        /// </summary>
        [Description("是否可归还")]
        [Column(Name = "CANRETURN")]//
        public bool CanReturn { get; set; } = false;


        /// <summary>
        /// 是否有解冻仓库
        /// </summary>
        [Description("是否有解冻仓库")]
        [Column(Name = "ISTHAWWARE")]//
        public bool IsThawWare { get; set; } = false;


        /// <summary>
        /// 出库是否记录设备号
        /// </summary>
        [Description("是否记录设备号")]
        [Column(Name = "ISREGEQUIP")]//
        public bool IsRegEquip { get; set; } = false;

        /// <summary>
        /// 是否记录产品批号
        /// </summary>
        [Description("是否记录产品批号")]
        [Column(Name = "ISREGPRODUBATCH")]//
        public bool IsRegProduBatch { get; set; } = false;

        /// <summary>
        /// 是否记录来料日期
        /// </summary>
        [Description("是否记录来料日期")]
        [Column(Name = "ISREGMATERARRIDATE")]//
        public bool IsRegMaterArriDate { get; set; } = false;

        /// <summary>
        /// 是否记录PCB Lot号
        /// </summary>
        [Description("是否记录PCB Lot号")]
        [Column(Name = "ISREGPCBLOT")]//
        public bool IsRegPcbLot { get; set; } = false;

        /// <summary>
        /// 是否删除
        /// </summary>
        [Description("是否删除")]
        [Column(Name = "ISDELETED")]//
        public bool IsDeleted { get; set; } = false;


        /// <summary>
        /// 显示客户代码(厂家)
        /// </summary>
        [Description("是否显示客户代码")]
        [Column(Name = "SHOWCUSTOMCODE")]//
        public bool ShowCustomCode { get; set; } = false;

        /// <summary>
        /// 备注
        /// </summary>
        [Column(Name = "REMARK")]//
        public string Remark { get; set; }
        /// <summary>
        /// 启用
        /// </summary>
        [Column(Name = "ENABLED")]
        public bool Enabled { get; set; } = true;
    }
}
